linux句柄

您所在的位置:网站首页 linux 窗口句柄 linux句柄

linux句柄

2023-11-04 00:19| 来源: 网络整理| 查看: 265

定义

什么是句柄? 文件句柄,也叫文件描述符。在Linux系统中,文件可分为:普通文件、目录文件、链接文件和设备文件。文件描述符(FileDescriptor)是内核为了高效管理已被打开的文件所创建的索引,它是一个非负整数(通常是小整数),用于指代被打开的文件。所有的IO系统调用,包括socket的读写调用,都是通过文件描述符完成的。

命令

在Linux下,通过调用ulimit命令,可以看到单个进程能够打开的最大文件句柄数量,这个命令的具体使用方法是:

#查看当前linux句柄数 ulimit -n # 设置linux的句柄数 ulimit -n 10000

使用ulimit命令来修改当前用户进程的一些基础限制,仅在当前用户环境有效。直白地说,就是在当前的终端工具连接当前shell,修改是有效的;一旦断开连接,用户退出后,它的数值就又变回系统默认的1024了。也就是说,ulimit只能作为临时修改,系统重启后,句柄数量又会恢复为默认值。

什么是ulimit命令呢?它是用来显示和修改当前用户进程一些基础限制的命令,-n命令选项用于引用或设置当前的文件句柄数量的限制值。Linux的系统默认值为1024。 默认的数值为1024,对绝大多数应用(例如Apache、桌面应用程序)来说已经足够了。但是,是对于一些用户基数很大的高并发应用,则是远远不够的。一个高并发的应用,面临的并发连接数往往是十万级、百万级、千万级、甚至像腾讯QQ一样的上亿级。

如果想永久地把设置值保存下来,可以编辑/etc/rc.local开机启动文件,在文件中添加如下内容:

ulimit -SHn 100000

增加-S和-H两个命令选项。选项-S表示软性极限值,-H表示硬性极限值。硬性极限是实际的限制,就是最大可以是100万,不能再多了。软性极限是系统警告(Warning)的极限值,超过这个极限值,内核会发出警告。 普通用户通过ulimit命令,可将软极限更改到硬极限的最大设置值。如果要更改硬极限,必须拥有root用户权限。终极解除Linux系统的最大文件打开数量的限制,可以通过编辑Linux的极限配置文件/etc/security/limits.conf来解决,修改此文件,加入如下内容:

soft nofile 1000000 hard nofile 1000000

soft nofile表示软性极限,hard nofile表示硬性极限。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3